/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: Lenovo
 * Date: 2025-03-31
 * Time: 21:51
 */
public class Main {
    public static void main(String[] args) {
        // 创建多个Student对象用于测试
        Student s1 = new Student("张三", 25,20);
        Student s2 = new Student("张三", 25,20);
        Student s3 = new Student("张三", 25,88);
        Student s4 = new Student("李四", 25,88);
        Student s5 = new Student("张三", 28,20);

        // == 比较（地址比较）
        System.out.println(s1 == s2);      //false(因为不同对象地址不同)

        // equals() 比较（内容比较）
        System.out.println(s1.equals(s2)); //true（因为name和age相同）
        System.out.println(s2.equals(s3));//true（因为name和age相同，sno虽然不同，但是重写equals()方法的时候并没有把sno写进去吗，所以sno忽略）
        System.out.println(s2.equals(s4));//false（name不同，age相同）
        System.out.println(s2.equals(s5));//false（age不同，name相同）

        // 打印哈希码（基于name和age生成）
        System.out.println("s1.hashCode():" + s1.hashCode());//s1.hashCode():24022545
        System.out.println("s2.hashCode():" + s2.hashCode());//s2.hashCode():24022545
        System.out.println("s3.hashCode():" + s3.hashCode());//s3.hashCode():24022545
        System.out.println("s4.hashCode():" + s4.hashCode());//s4.hashCode():26104877
        System.out.println("s5.hashCode():" + s5.hashCode());//s5.hashCode():24022548
    }
}
